////Copyright 2011 - Jonathan Allen

//using System;
//using Granite.Metadata;
//using System.Collections.Generic;
//using System.Globalization;

//namespace Granite.Modeling
//{
//	/// <summary>
//	/// This is used to provide custom parsing logic
//	/// </summary>
//	public class ParsingPropertyEventArgs : EventArgs
//	{
//		readonly string m_Source;
//		readonly PropertyMetadata m_TargetProperty;
//		object m_ParsedValue;
//		bool m_Handled;

//		/// <summary>
//		/// Use to override the CultureInfo used for the default parsing logic
//		/// </summary>
//		/// <remarks>Defaults to InvariantCulture</remarks>
//		public CultureInfo CultureInfo { get; set; }

//		/// <summary>
//		/// 
//		/// </summary>
//		/// <param name="source"></param>
//		/// <param name="targetProperty"></param>
//		public ParsingPropertyEventArgs(string source, PropertyMetadata targetProperty)
//		{
//			m_TargetProperty = targetProperty;
//			m_Source = source;
//			CultureInfo = CultureInfo.InvariantCulture;
//		}

//		/// <summary>
//		/// Indicates the parsing was completed.
//		/// </summary>
//		public bool Handled
//		{
//			get { return m_Handled; }
//		}

//		/// <summary>
//		/// The parsed value to be stored in the matching property
//		/// </summary>
//		public object ParsedValue
//		{
//			get { return m_ParsedValue; }
//			set
//			{
//				m_Handled = true;
//				m_ParsedValue = value;
//			}
//		}

//		/// <summary>
//		/// Source string to be parsed
//		/// </summary>
//		public string Source
//		{
//			get { return m_Source; }
//		}

//		/// <summary>
//		/// Property being parsed
//		/// </summary>
//		public PropertyMetadata TargetProperty
//		{
//			get { return m_TargetProperty; }
//		}
//	}
//}
